package com.example.juc.sort;

/**
 * 鸡肋算法，没有实际意义，实际项目不可能这样休眠
 */
public class Test {

    public static void main(String[] args) {
        int[] arr = {1, 34, 12, 344, 22, 22, 8, 79, 87};
        threadSort(arr);
    }

    /**
     * 使用多线程的方式排序
     * 思想：多个线程使用休眠的方式输出数组元素。
     * 按照数组元素的大小进行线程休眠，数据越大休眠时间越长，最后才会输出，以此来达到排序的效果。
     *
     * @param arr
     */
    public static void threadSort(int[] arr) {
        for (int i = 0; i < arr.length; i++) {
            final int arri = arr[i];
            new Thread(() -> {
                try {
                    Thread.sleep(arri);
                } catch (Exception e) {
                    e.printStackTrace();
                }
                System.out.println(arri);
            }).start();
        }
    }

}